home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / ctutor.exe / SOURCE / LIST.C < prev    next >
C/C++ Source or Header  |  1994-05-15  |  2KB  |  37 lines

  1. /*******************************************************************/
  2. /* LIST.C - main control program for LIST.EXE                      */
  3. /* Copyright (c) 1994 Coronado Enterprises                         */
  4. /*                                                                 */
  5. /* This program will read in any text file and print it with line  */
  6. /*  numbers and with page numbers.  It is meant to be a listing    */
  7. /*  program for source code.                                       */
  8. /*                                                                 */
  9. /* This program depends very heavily on the LISTF.C file which     */
  10. /*  contains the working functions to implement the printing       */
  11. /*  functionality.                                                 */
  12. /*******************************************************************/
  13.  
  14. #include <stdio.h>             /* standard I/O header file         */
  15. #include "listf.h"
  16.  
  17. int main(int argc, char *argv[])
  18. {
  19. int return_value;              /* end of file indicator            */
  20.  
  21.    if (open_in_file(argc, argv[1]))  /* open the file to print     */
  22.       return (1);              /* did not open properly            */
  23.    if (open_printer())         /* open the printer driver          */
  24.       return (1);              /* did not open properly            */
  25.  
  26.    do {
  27.       return_value = read_one_line();   /* read a line into buffer */
  28.       if (return_value)
  29.          top_of_page();        /* start a new page if necessary    */
  30.          print_one_line();     /* print the line                   */
  31.    } while (return_value);     /* continue until EOF               */
  32.  
  33.    eject_page();               /* eject the last page              */
  34.    close_both_files();         /* close the file and printer       */
  35.    return (0);
  36. }
  37.